# create new
[DEFAULT]
debug = false

[ml2]
type_drivers = flat,geneve,vxlan,vlan
# Example: type_drivers = flat,vlan,gre,vxlan
# (ListOpt) Ordered list of network_types to allocate as tenant
# networks. The default value 'local' is useful for single-box testing
# but provides no connectivity between hosts.
#
# tenant_network_types = geneve,vxlan,vlan
# 一般不需要指定--provider-segment，由于ovn得限制，启用vxlan得话,
# 后面得vni_ranges都必须小于4096
#
tenant_network_types = geneve
# Example: tenant_network_types = vlan,gre,vxlan
#
mechanism_drivers = ovn
# (ListOpt) Ordered list of networking mechanism driver entrypoints
# to be loaded from the neutron.ml2.mechanism_drivers namespace.
#mechanism_drivers = openvswitch,linuxbridge,l2population
# mechanism_drivers = openvswitch,cisco_apic
# Example: mechanism drivers = openvswitch,mlnx
# Example: mechanism_drivers = arista
# Example: mechanism_drivers = cisco,logger
# Example: mechanism_drivers = openvswitch,brocade
# Example: mechanism_drivers = linuxbridge,brocade

extension_drivers = port_security,qos
overlay_ip_version = 4

[ml2_type_vxlan]
vni_ranges = 1:4095

[ml2_type_vlan]
network_vlan_ranges = pyhnet1:2:4000
# network_vlan_ranges = physnet1,physnet2:1001:2000

[ml2_type_geneve]
# vni_ranges = 1:4095
vni_ranges = 1:65536
max_header_size = 38

[ml2_type_flat]
flat_networks = *

[securitygroup]
enable_security_group = True
firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver

[ovn]
ovn_nb_connection = tcp:{{ inventory_hostname }}:6641
ovn_sb_connection = tcp:{{ inventory_hostname }}:6642
ovn_l3_scheduler = leastloaded
ovn_metadata_enabled = True

# Enable distributed floating IP support. If True, the NAT action for floating IPs will be
# done locally and not in the centralized gateway. This saves the path to the external
# network. This requires the user to configure the physical network map (i.e.
# ovn-bridge-mappings) on each compute node.
enable_distributed_floating_ip = False
